Quality Assurance & Development
Due to the fast-changing nature of our industry, we do not release on a specific, consistent schedule.
As a general rule, Window Book releases products at least once a month, but this depends on USPS updates, internal development schedules, and progress through our quality assurance process.
We do usually build software products and run automated regression and unit testing internally several times a week. We have a sophisticated system of test-driven development that enables Window Book to deliver high-quality software in rapid time frames due to last-minute industry changes.
Quality starts in development. It includes things done to assure consistency from the start of development to the creation of the installer and beyond.
We manage our products and their components via source control. Source control is a management system that allows you to keep a history of your program source created, updated, repaired, and enhanced. It allows for a detailed audit trail and enables development teams to ensure they are not corrupting each other's changes by mixing old code with new code.
When updated programming is "checked in" to our source control repository (much like checking in a book at the library), our continuous integration system automatically rebuilds any components affected by those changes. This automated build system makes sure that our products and their components are up to date and use the same build process every time, no matter who is traveling or on vacation.
When a product manager is ready to create a new build - and thus, a new installer uses a request system that tells our continuous integration system to build a new installer for that product. They enter release notes, set the version numbering to be used, and say to the system to start creating the installer.
At that point, the continuous integration system builds the entire product, pulls in the current version of any required components, code signs the binary (dll/exe) files, creates the installation program, uploads the installer to our download site, and emails the product manager to inform them that the installer is ready.
Once the installer is built successfully, it is automatically detected by our automated testing system. Our automated testing system performs two types of tests: Quick tests and Comprehensive tests.
Quick tests run in just a few minutes in a known environment, such as a fresh installation of Windows 10, and assure that the install and the most basic functions work on the OS where tested.
Comprehensive tests operate in a known environment, either as an upgrade or a new install. They perform numerous end-user tasks in the product once the install completes. Tasks might include importing a Mail.dat, generating statements, exporting a Mail.dat, and printing reports. Our comprehensive tests total over 100,000 test points. For example, clicking a button is 1 test point. Typing data in a field is another. Each step of a comprehensive test has an expected outcome. If anything changes or an unexpected result occurs, our testing team is aware of it and can discuss the situation with development.
Comprehensive testing finds problems before our product managers, and other testers do. Most importantly, this kind of automated testing consistently verifies thousands of functions much faster and more consistently than human testing can. Our product managers also verify each new development case and bug fix submission.
This complex, automated process produces a consistent product with the highest possible quality. Every step of the process finds issues before they reach a customer. We invest substantially in our quality assurance processes because we know the quality of our products directly affects your business.
See also