Requirement Driven Development (RDD) focuses on the attributes of a product the dev team needs to keep top-of-mind as they work. Clients and key stakeholders propose the requirements and the contractor refines them, talking with the client back and forth throughout development. In order to do this successfully, features must be constantly tested and requirements vetted through formal testing and evaluation. The purpose of a formal Test and Evaluation (T&E) program is to accomplish two goals; verification of the build...

For 22 years, Phase 2 had focused on our clients first and refining our methodology for digital transformation. But, our solid foundation and accelerating growth revealed to leadership a need to refine our brand and position Phase 2 for the continued growth ahead. So, for our 22nd anniversary, we redesigned our brand to be fresher, more flexible, and reflect our growing future for many years to come....

Have you ever heard the expression, “you can have it cheap, fast or good – choose two”? This is an important concept to remember when contracting work out, especially software development. Here, we explain why the two options you choose are important and why you can’t have all three. In today's society, everyone wants things immediately. Instant gratification is trending to the point of being a way of life (thanks, Amazon Prime.) The faster we get something, the better. As new...

Building code and releasing code are not the same, despite what some may think. Most organizations become proficient at the act of creating software including writing code, adding new features, fixing bugs, etc. However, many struggle mightily when it comes to releasing what they’ve made into the world. I would argue releasing code is somewhat of an afterthought for most development teams; it continues despite the recent rise of the DevOps culture. In an effort to kick-start improvements in your...

The rise in popularity of open-source software has made the usage of third-party libraries nearly universal. Projects often use dozens of them and those, in turn, use dozens more. We want to avoid reinventing the wheel and if someone else has already solved a problem, it doesn't make sense for us to solve it again. The Good and the Not-So-Good At its best, open-source software provides solutions that have been thoroughly vetted by hundreds or thousands of users. Bugs have been...