Tetra Tech's David Burnham Discusses Using No/Low Code Development Platforms to Redevelop Federal IT Applications
Using a new visual development platform for business process modernization and cloud migration
Information Technology and Cyber Services
David Burnham is a lead architect for Tetra Tech’s Federal Information Technology (IT) group in Arlington, Virginia. Throughout his career, he has been a chief technologist, implementing new software tools and methodologies in complex mission environments. He has more than 30 years of experience developing applications critical to operational portfolios for various organizations. David has succeeded in startups, Fortune 500 companies, and state and federal government offices and environments. He has a strong background in database design and data modeling, which are key to developing flexible and strategic systems.
His professional career started with Accenture, where he was part of the advanced system group. His primary focus and area of expertise was working with organizations to implement the IBM Db2 relational database management system and establish best practices for its enterprise use. He then became the Vice President of Technology for IntelliCare, a startup that quickly became one of the top 10 fastest growing technology companies in New England. He was responsible for the overall design of a call center application, including the database design and technical architecture that connected remote nurses with understaffed medical centers across the United States. For more than 12 years, David has been involved in the business process modernization (BPM) space, where he has become an expert in Agile methodology and no/low code development. David has a bachelor’s degree in Computer Science from Temple University.
What is no/low code development and what challenges do you see in the industry?
No/low code is a new visual development platform with drag and drop functionality to allow business users to develop applications with ease. There is very little, or no, coding needed. This new technology is being driven by the lack of resources available to support the information system modernization goals of government agencies to meet their current operational needs. Allowing users to assist in the development life cycle improves the efficiencies of developing applications. No/low code provides subject matter experts within organizations with the capability to develop applications themselves and/or partner with technical resources. These platforms are cloud based, so they facilitate the need, across the U.S. Department of Defense (DoD), to migrate legacy applications to the cloud, and they include capabilities for artificial intelligence and machine learning, which can optimize the efficiency of business processes. We saw this same type of shift in application development in the 1990s, with business users leveraging user-friendly tools, like Microsoft Access and Excel spreadsheets, to develop simple applications. Currently, the business user will describe to the technical resource how they want the application to function. The technical resource then designs the user interface; demonstrates it to the user, who provides feedback; the technical resource modifies the interface and shows it to the user again, who provides more feedback; and this process continues until the organization is satisfied with the product. Comparatively, no/low code development streamlines this process by shifting the design and development into the users’ hands.
With no/low code, users can become more involved by designing their own interface(s)—as citizen developers—creating data attributes and implementing their own business rules. This is an ideal way to remove the middleman (technical resources) from the development life cycle for simple applications and minor changes and enhancements. However, managing data and business rules is more important in this environment. Without proper controls, data integrity can be compromised, and incorrect logic can be introduced into the operational processes. Security, testing, and deployment become more critical as users are empowered to develop more components of the application. This is where continued support from system architects with platform expertise and training for citizen developers forms an ongoing partnership with the customer. While customers can take control of creating the functionality needed for their day-to-day operations more rapidly, technical experts can focus on the overall integrity and security of the application.
What current trends do you see with no/low code development? What does the future hold?
With the increase in no/low code applications, there will be a gradual transition of tasks from IT developers to business users. As business users become citizen developers, organizations will need to increase their staffing and even add individuals with new skill types, including basic software development competencies, to their staff. I have seen business users get overwhelmed trying to balance their current responsibilities with the addition of doing no/low code development. Training is vital, otherwise technical resources will spend most of their time assisting business users. The role of the IT developer will become one of a mentor to the business user. The roles of designing and coding will begin to morph.
In low code environments, IT developers focus less on developing complete applications and more on creating reusable components (forms, workflows, data interfaces, etc.) that can be consumed by the business users. These components will be the key for integrating data and business rules across the enterprise. With the increase in user-developed applications, testing will become even more critical in the development life cycle. In addition to developing components, IT professionals will focus on the technical tasks of security, data management, performance, and version control, as well as focus more on system integration and less on individual applications.
Of the no/low code development projects you’ve worked on, which are you proudest of?
While working for the state of Maine, I led a no/low code project, working closely with the governor’s office to build a public website that tracked complaints. This was the first time I was able to take full advantage of no/low code development. I worked hand in hand with business users to help define user interface components and implement the business logic rules. These users were able to significantly contribute to the project design and coding tasks. The development consisted of a completely integrated team, with no clear separation of business versus technical resources. This project was delivered ahead of schedule, under budget, and with additional functionality above what was included in the original scope of work.
After six months in production, there were no outstanding defects, and the next release was scheduled with minimal IT involvement. The state loved the system because their employees contributed directly to its development, demonstrating the effectiveness of the citizen developer concept, and how no/low code platforms shift that application development capability from purely IT specialists into the control of business users.
How is Tetra Tech positioned to help defense clients in no/low code development?
Tetra Tech’s Agile software development approach enables us to quickly incorporate no/low code platforms into the development life cycle with defense clients to quickly optimize and upgrade their applications to achieve BPM goals. Currently, we are working on several projects using no/low code. Our team has worked together for the last two years implementing no/low code technology for U.S. Air Force system modernization efforts. This has refined our team dynamic, strengthened our ability to support defense clients as a single unit, and evolved our approach to creating highly effective project teams to support implementation and development in this changing environment.
Tetra Tech can train business users on no/low code platforms to support their evolution into citizen developers and help them take full advantage of the speed and ease of development in these environments. Our team concept of aligning Tetra Tech’s IT specialists with business users and citizen developers follows the Agile development principles of involving product owners early and throughout the development life cycle, enabling business users to quickly participate as key players in our development teams. This results in smaller IT support team costs that can create new and faster functionality with less rework when business users are engaged.