The Citizenship and Immigration Services is pitting vendors against each other as part of its move to agile development.
This new approach to acquisition is giving life to the idea of competition during a project’s development stage.
Mark Schwartz, the chief information officer of the Homeland Security Department’s CIS, said the goal is to have teams of vendors work collaboratively or independently on shared projects and let the best of the best rise to the top.
“They’re both incentivized to collaborate and cooperate, and keep the government’s best interest in mind,” Schwartz said. “But at the same time, there is some amount of competition. I prefer really to think about it as they should want to show us how great they are regardless of how the other contractors are doing.”
Schwartz said CIS made awards to four vendors, which are initially providing two teams each to help apply agile development to its huge $3.6 billion — by some estimates–transformation program, under the Flexible Agile Development Services (FADS) contract.
“Every six months we enter a new option period and we can readjust the number of teams. We are still in the first base period now. But as each of the periods ends, we will look at the performance of those contractors and decide how many more teams or fewer teams we want. If want more teams, we will choose which contractors to ask for the teams from,” he said. “We hope using that kind of a model to keep the contractors in some amount of competition with each other so they hopefully want our continued business, so if they can show us what a great job they are doing, we will wind up getting more teams from them as we grow the project. At the same time, one of the criteria that we are evaluating them on and that we’ve discussed with them is how well they collaborate with the other contractors and feds on the contract.”
Schwartz said FADS came together over a two-year period where he discussed different concepts CIS leaders from across many disciplines.
“The concept is really a reaction to the bad history that lot of the government has had with big system integrators because with a big integrator they are playing a lot of different roles and typically embedded in the government’s programs so deeply that it’s very hard for them to feel competitive pressure or to really try to blow the government away with wonderful performance. At least that’s what we noticed or that’s what we thought,” he said. “We said, ‘How could we improve that situation? Well, how about we make it possible for smaller teams and smaller contractors to play and open up the playing field a little bit?’ We could set up an environment where they can really show us how good they are and have an incentive to do so, and, perhaps, feel a little bit of pressure to do so.”
Schwartz said vendors were intrigued about this approach and offered some feedback to refine the concept.
“Our expectations are that different contractor teams are going to approach it in different ways and as a result of those conversations, we structured it so they do have a fair amount of freedom, or at least I think they have a lot of freedom, to figure out how to manage their own teams and how to best deliver in a way that is unique to their organization,” he said.
CIS is slowly moving to the FADS approach as they move off old contracts.
But one of the first programs Schwartz applied this continuous delivery model to is the Electronic Immigration System (ELIS) program.
CIS is developing the new version of ELIS under a dev/ops model.
“With the continuous delivery model, we have an automated development pipeline and an automated deployment pipeline, and what that means is as soon as developers finish a piece of code and check it in, the system automatically rebuilds itself, most of our tests are automated so all the automated tests run against it so it’s like regression testing every couple of minutes,” he said. “If we decide the build it is good, it automatically can deploy it into staging environments and production deployments so all the deployments are scripted as well. It’s meant to create fast turnaround. We can do small pieces of new functionality and put them into production very quickly, using the automated system and get feedback from users, feedback from production monitoring and reporting. We can get feedback from a whole lot of different sources and incorporate into the product as we are building.”