Quality is a Process
Quality is not a result. Quality is not an act. Quality is a process. And Softage takes that process seriously.
To us, quality means delivering bug free software, software that does what it’s designed to do, and software that our clients are happy with. It means more than that, too. It means clean and clear communication throughout the process. Quality communication means our clients knowing what we can do, right from the beginning, and our people knowing what our clients expect every step of the way. Working with Softage means you will always know where your software is in the development process, what parts are being prioritized, and the status of your project.
Every team needs a leader, and at Softage every team has one. Our first order of business when working on a new project is to select an individual with relevant experience and place them in a leadership position. It is their job to keep you, the client, aware of everything involved in the process, and to make certain the evolving solution matches your vision. The entire team is made available, of course, so you know who is working for you, and what they’re doing, but this way you always know who to contact with questions, changes, recommendations, and problems.
Development Team Collaboration
The left hand not knowing what the right is doing is a problem in any industry, but it can really make life difficult in a job that involves as much typing as ours! All joking aside, this is a major cause of problem in software development, because all the pieces are assembled by different people, but must fit together, and the requirements of the finished product may change on the fly. Softage has a system in place to make certain our team operates as a team, from project inception, to delivery, and beyond.
A craftsman is only as good as their tools, and quality begins with setting up and configuring the work environment at Softage, so that our team has all the tools they need to check on product quality and log smooth progress reporting. We go one step further, though, and make sure that our suite includes many of the project tracking tools that our clients may already be using, including:
- MS Project
If you want to use collaboration software not this list, please contact us, and we’ll see if we can make it happen.
Softage uses collaboration tools (SVN/Git, TFS, and such), continuous integration, automated builds, unit testing (JUnit, NUnit), and automated testing (Selenium-based tools), to make certain our projects are solid from the foundation clear to the roof.
On top of that, we have a dedicated set of virtual machines running different environments (free of development tools) to make sure the software will not only work, but work in a range of environments. This is a critical step, because the development environment doesn’t represent the full range of operating conditions software will be subjected to “in the wild” on client machines.
Our developers are expected to do everything they can to ensure code quality even before they upload code to our testing tools. Softage utilizes, among other activities in this direction, peer-to-peer reviews by our staff, so that everyone is pulling their weight and working together. However, mistakes do slip through the cracks . . . that’s why Softage has dedicated test designers and manual testers on staff, people whose entire job is catching those mistakes and making sure what we’ve built works.
All change requests, enhancements, issues are registered in the corresponding tool(s) and the status of each is clear at any point. All points of communication are clearly defined. Nothing gets lost. Everything is prioritized. Quality is a process, and Softage understands how that process works.