I’ve been in this industry for close to 10 years, and one of the biggest challenges I’ve found is staying on top of the latest trends in technology. There are always new technologies, processes and buzzwords to understand and translate to solving business problems.
Recently, UDig consultants have been deployed on projects leveraging a software development process called Test-Driven Development, or simply TDD. If you are unfamiliar with TDD, it isn’t necessarily brand new, but has only recently been adopted by larger organizations who heavily emphasize Agile methodologies within their SDLC.
TDD is a software development process that relies on short Agile sprints where:
– A Developer writes an automated test case that defines a new function
– Developer writes the minimum amount of code to pass the test
– Then the developer refactors the code to acceptable standards
This process is a major mind shift for most developers but one that can lead to more flexible code and one that eliminates defects early so the developer does not have to deal with lengthy debugging later in the project. Multiple studies have concluded that developers who follow TDD are often more productive and confident in their code.
As with every approach to development, TDD certainly has some limitations that must be discussed. The first is simply time. TDD can be viewed as a time-intensive process where an excessive number of unit tests are written and ultimately fall into the overhead of writing the code. Another limitation is the fact that the tests are being written by the developers themselves, which means there could be a certain level of bias involved. It is never a good idea to be auditing something you have done because it eliminates the objectivity and could overlook mistakes within the code, leading to a false sense of security.
Kent Beck, the “Founder” of TDD, mentions in his book that TDD was created to eliminate the fear in application development and encourage communication and accountability amongst developers.
One recent TDD project UDig completed consisted of building the technical strategy and architecture for a Patient Portal for a leading regional healthcare provider. Based on the successful implementation and feedback from our consulting team who built the Patient Portal, the process was a huge success and it was a positive experience.
You can read the full story of the Patient Portal on our website along with other examples of how UDig is helping clients overcome their technology challenges. Although I don’t come from an overly technical background (I’m pretty sure I couldn’t wait to get out of computer class in my high school days) my focus is on understanding client business problems and what role IT ultimately plays in helping to reduce or eliminate those problems. If your organization needs additional expertise in technical strategy & architecture, information management & big data, and application services to reach your goals, I would love to talk about how UDig can help.