You may not have caught this story, but last week Boeing launched the new Starliner spacecraft, which is designed to be the next generation launch vehicle. The Starliner capsule did not make it to the International Space Station (ISS), it’s intended destination. It was able to land successfully back on earth yet there were a number of anomalies (some dangerously serious) that plagued the mission and all of these were related to software bugs.
I’ll be the first to admit that I know nothing about the project, the particulars of the software involved, the challenges they faced, or the constraints they were working under. What I find interesting is that after spending 6.8 billion dollars on this project there were a number of issues that could have been avoided with proper software development and testing processes.
This is not unfamiliar to any of us in the software industry. What I will say, though, is that no-code development platforms (like Decisions) can help clients avoid such setbacks in a number of ways. The two that I will focus on with this post are:
I come from the process industries where distributed control systems (DCS) have been using no-code software for at least 35 years. The benefit to using drag & drop, graphical steps is that the code you have just dropped on the screen has been tested and used countless times in the past. Much of what programmers write are the same routines over and over again. So, using no-code platforms removes the repetitive code writing and ensures you are using code that works. So long as you are connecting it properly, and Decisions has checks in place for this as well, the code will run as designed.
The other benefit to no-code platforms is the ability to more easily run unit tests. Testing software is typically an after-thought or something that’s done at the tail end of the process. With Decisions, unit tests can live with the flows and rules and be run whenever anything is changed or on a schedule. In this way, you can create tests against every possible scenario possible to ensure the software is working as intended.
To summarize, through the use of reusable code steps and unit tests a lot of the problems that plague application development can be avoided. The process of building the code is also anywhere from 3 to 10 times faster and will result in fewer bugs and areas for rework.
If you’d like to discuss your particular development project we’d love to talk with you. Please reach out at firstname.lastname@example.org.