KBR employees (left to right) Nick Mendiola, Erik Gartzke, and Elizabeth Post are a part of KBR's Team Beskar, a software development collective that supports the U.S. Space Force's Space CAMP software factory.

KBR's designers and developers draw on user-centered design - an innovative DevSecOps methodology - to help DoD software development programs.

Give the customer what they need, not what they think they want.

This ethos fuels modern-day innovators and futurists. It guided Steve Jobs as he developed the first iPhone and Henry Ford building the Model T. Famously, Ford was known to have once said 'If I had asked people what they wanted, they would have said faster horses.' And while people debate whether Ford actually ever said this, it has nonetheless been used as a rallying cry in the software development world against what is known as user-driven design.

'People think that a user says 'jump' and we say 'how high,'' says Jaime Drasheff, a product manager on KBR's Team Beskar, a software development collective of more than 50 people out of Colorado Springs that supports the U.S. Space Force's Space CAMP software factory. 'That's not really how it works.'

Drasheff is referring to user-centered design - a modification of user-driven design that takes the time to understand the user's goals to develop a product that perfectly fits their needs. There's a key difference between the user driving production, and production centered around the user.

'If someone wants to get from point A to point B faster, sure, they may simply ask for a faster horse,' she said. 'But if you really spend time with them, understand what they are trying to accomplish, that's the sweet spot for innovation and a good user experience. Being able to understand the user's point of view, their environment, their motivations, their workflow - all of those things lead us to developing a car instead of a faster horse.'

Added Cody Harris, Team Beskar program manager: 'It's not that we don't trust that our users know what they want, we have a very intimate understanding of how software works. Our users on the other hand have a very intimate understanding of their specialty. We combine their specialty with ours in order to produce the very best solutions possible. It is a more effective way to meld expertise.'

User-centered design is one of the many innovative DevSecOps methodologies that Team Beskar is helping bring to the Department of Defense's (DoD) software development programs through its contract with Space CAMP. The team is made up of product managers, software engineers, user interface (UI) and user experience (UX) designers who each follow a set of agile development principles. Like the name implies, an agile software development approach allows Team Beskar to adapt to the changing needs of their customers, in real time, quicker and cheaper than traditional software development methods.

'We are able to develop software applications from scratch - starting with discovery,' said Delilah Alvarado, KBR's Space Camp organizational director. 'We also work to modernize legacy applications and help educate and train our customers on the new DevSecOps and agile methodologies which transform their cultures.'

What does that look like in practice? Take Tristan Holaday, a software developer who is currently working on an application for a DoD customer working in the space domain that takes operational event responses from pen and paper to a full-blown, real-time web application usable across multiple domains. Another example, Drasheff and software developer Kevin Boicourt worked with a team to create a proof-of-concept laser deconfliction application from the ground up utilizing agile user-centered design principles to replace existing functionality of a legacy product.

'Beskar brings the most commercially competitive software development practices to the DoD,' said Alvarado. 'In doing so, we assist the DoD in breaking away from the time resource constraints of acquiring, developing, and deploying software in the archaic waterfall methodologies.'

DoD software factories, like Space CAMP, are helping fuel a digital revolution in national defense. While Team Beskar, who joined KBR as part of the Centauri acquisition in October 2020, is currently focused in Colorado Springs, the hope is that the team will continue to grow and have a footprint in more software factories across the country - bringing their 'agile is the way' approach along.

'I could go the corporate route and work for Google or Facebook, where the processes are already in place, but I like being a catalyst for change in the DoD,' said Drasheff. 'I like being able to actually talk to my customer and see them get excited about being under budget, moving fast, and getting something they need. It's just a nice, warm and fuzzy feeling.'

Sidebar:

Team Beskar Terminology

Learn the keywords directly from the team

Beskar

'With software factories taking on Star Wars and Star Trek references as their names - like Bespin and Kobayashi Maru - we thought we'd join in on the fun. Beskar is a fictional steel used by Mandalorians in Star Wars. It's a super resilient metal, but it's also super light and agile. We're providing our customers with hardened, resilient, and secure software to solve their toughest challenges. So it fits.'

-Tristan Holaday

Test-Driven Development (TDD) & Red Green Refactor

'We write our tests before we write our production code. It gives us a focused view on what needs to get done. With TDD, we specifically work on the idea of Red Green Refactor. First, we write a test without any production code to actually test, and you know it's going to fail (go red). Then you write enough code based on that test to make the test pass (go green). Then we can go back and we can refactor it and make it better, cleaner and more efficient. It gives us a more isolated view of what needs to get done. It's like writing code with blinders on so you don't get too sidetracked with other things. And it also helps us write just enough code to focus on the problem and not get too bloated and get way out of bounds too quick.'

-Kevin Boicourt

Waterfall Development

'Waterfall is a dependency driven style of software development, meaning that until you finish A, you can't start with B, and until you finish B, you can't start with C. Waterfall centers software design on what a subject matter expert might consider important for a user. It often bypasses the boots-on-the-ground operator that is using the product.'

-Jaime Drasheff

Extreme Programing

'Extreme programming is a programming methodology that embodies at its core a single idea, shorten the feedback loop in all things. Fail fast and fail early at the lowest possible level. It is much cheaper to fail a unit test immediately than find a bug in production that costs users and customer stakeholders productivity and costs the company good faith and user confidence in our products. Developers should be the first users of our code. This means code that doesn't serve developer's needs of readability, testability and extensibility is not code that should be published. TDD helps ensure developers write the minimum code necessary for a new feature. It also ensures that new code is testable and that every new piece of code submitted has tests to prove its functionality. Building a culture that can produce code we are confident a junior developer could change without unknown regressions is what we strive for at Team Beskar.

-Joseph Hubbard

Pair Programming

'Pair programming is when two or more developers will work together - one driver and one navigator. If there's a requirement to create a feature, two developers will use test-driven development and work together to create that feature. The driver is the person who's actually writing the code and the navigator is there to help catch errors and plan the path ahead. This leads to increased security awareness and helps you resolve issues a lot faster.'

-Tristan Holaday

Attachments

  • Original document
  • Permalink

Disclaimer

KBR Inc. published this content on 17 June 2021 and is solely responsible for the information contained therein. Distributed by Public, unedited and unaltered, on 17 June 2021 21:12:04 UTC.