The push to the cloud is just one way in which the Program Executive Office for Enterprise Information Systems (PEO EIS) is transforming business information technology.
In recent years, PEO EIS and its programs have begun to adopt an agile software development process which can be faster than the traditional process and also increase Navy customer involvement while decreasing cost and development time.
“Agile software development benefits everybody,” said Dave Driegert, the Department of the Navy (DON) Sea Warrior Program (PMW 240) assistant program manager for mobility. “It’s a win-win-win for the Navy customer, developer and PEO EIS program manager. The customer is actively engaged in every step of the project. The developer receives feedback as the software is engineered from minor items such as font and icon selection to bigger items such as the app mechanics or a change in functionality. The program manager is able to open the lines of communication with all parties to mitigate issues and manage the cost, schedule and performance.”
Sea Warrior Program mobile applications are built using an agile software development process. In the two and a half years since the Sea Warrior Program began developing apps, a total of 18 apps have been released on both Apple App and Google Play stores, and three additional apps are expected to be out by summer.
eDIVO, the first app developed by the Sea Warrior Program, took approximately six to seven months to build. Today, the process is refined to the point that apps are now developed in approximately two months.
“Most of our customers have never heard about agile software development before we begin working on an app, but after experiencing it, they find that it’s a very natural process,” Driegert said. “They feel like they are integral members of the development process and they like providing feedback and requesting changes in real-time as the app is being built. A tight-knit relationship between the developer, customer, and Sea Warrior Program is created through the agile process.”
So how does an agile software development process work?
Agile versus traditional development
The agile development process begins the same way as a traditional development process: Gathering and developing requirements that are formalized in the acquisition process and shared with industry in the form of a Request for Proposal so industry can bid on the work. Development begins once a vendor is selected to complete the work. The two approaches differ in the actual execution of the work.
In a traditional approach, the developer reviews the requirements with the customer and then spends weeks or months creating the product based on the developer’s understanding of the project and presents the customer with a finished product to test and certify.
The development is typically done with little guidance or interaction with the customer. Since the product is developed based on the requirements without real-time feedback from the customer, there is usually a long laundry list of items that need to be changed. The list is even longer if the initial requirement was poorly defined, if the developer misinterpreted the requirement, if the requirement doesn’t work as well in software as anticipated, or if the customer decides to change the concept of the product. Additionally, cost will increase if major changes are required.
“In an agile environment, we start with the specifications, but the involvement of the subject matter expert (SME) is the key difference,” said Victor Gavin, program executive officer of EIS. “The SME is involved throughout the process to guide the tradeoffs that are made during the development process, especially as technology continues to evolve. We also expect the SMEs and business systems to do what we call business process re-engineering, that is to match their detailed implementation to the tools that we selected for the development. As a result, it requires a different role for those SMEs than what they are typically used to, which is waiting for the product to be built and to test it.”
With agile development, the overall project is developed in small sections called “sprints,” which focus on specific slices of a pie versus the whole pie at one time. As the sections are built, the developer and customer have regular contact throughout the development, clarifying ambiguous requirements and adapting to changing concepts. The customer is consulted and involved in every step of the process due to regularly scheduled milestone check-ins. These regular deadlines provides the customer with an opportunity to review and provide feedback on the product as it is being developed, allowing the customer to tweak requirements and other aspects of the product along the way rather than at the very end.
Sea Warrior Program’s mobile app development process includes weekly meetings with the developer and customer to review the work that has been done and to ensure the product meets the customer’s and requirements.
“Simply stating a requirement in words doesn’t always seamlessly translate into a functional action in software,” Driegert said. “Seeing it on a screen, in action, is the only way to validate if the requirement functions as intended.”
My Navy Portal
In addition to mobile apps, the Sea Warrior Program uses agile development on other projects including My Navy Portal (MNP), Department of the Navy Tasking, Records, and Consolidated Knowledge Enterprise Repository (DON TRACKER) and Risk Management Information (RMI) among others.
Launched in February, MNP is a Sailor-facing, self-service portal to manage human resources needs from hire to retire. The Navy currently has about 60 HR systems used by Sailors in managing their careers and MNP was designed to integrate them into a single portal.
“We used agile out of necessity,” said Jake Aplanalp, the Sea Warrior Program (PMW 240) assistant program manager for MNP. “The customer knew they wanted a portal. They knew there were approximately 60 systems out there that needed to be incorporated into this portal, but nobody had a crystal-clear vision of how to do it.”
Utilizing the agile approach allowed the Sea Warrior Program and the developer to work cooperatively with the customer to develop an intuitive, user friendly portal that meets the needs of Sailors. My Navy Portal was built in layers, with tests for the appeal of various looks and options, then changes were made based on feedback from the customer.
MNP was built in sprints with components of the portal built, completed, and reviewed in two-week increments. Although the full team formally met with the customer every week, Aplanalp spoke with the customer as many as 10 times a day to ensure the project was built to their specifications.
“If a traditional approach was used, the developer would have built to the requirements,” Aplanalp said. “We wouldn’t have been able to quickly react to emerging priorities or new focus areas that the requirements didn’t initially specify.”
Editor’s Note: April 20, 2017, the PEO EIS held a Change of Charge ceremony at the Washington Navy Yard in which Mr. Victor Gavin was relieved by Ms. Ruth Youngs Lew. Gavin is now the Deputy Assistant Secretary of the Navy for Command, Control, Communications, Computers, Intelligence, Information Operations, and Space (DASN C4I, IO, and Space).